-- ================================================
-- Template generated from Template Explorer using:
-- Create Procedure (New Menu).SQL
--
-- Use the Specify Values for Template Parameters 
-- command (Ctrl-Shift-M) to fill in the parameter 
-- values below.
--
-- This block of comments will not be included in
-- the definition of the procedure.
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:		Michael Blumenthal
-- Create date: June 6, 2014
-- Description:	Deletes a customer and all child records
-- =============================================
CREATE PROCEDURE CustomerDel 
	-- Add the parameters for the stored procedure here
	@CustomerID int = 0
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

    -- Insert statements for procedure here
	Declare @AddressID int;
	SELECT @AddressID = ca.AddressID
	from SalesLT.CustomerAddress ca
	where ca.CustomerID = @CustomerID

	Declare @AddressCount int;
	SELECT @AddressCount = count(*)
	from SalesLT.CustomerAddress 
	where AddressId = @AddressID

	DELETE FROM SalesLT.CustomerAddress
	WHERE AddressID = @AddressID
	and CustomerID = @CustomerID

	DELETE FROM SalesLT.Customer
	WHERE CustomerID = @CustomerID

	if @AddressCount = 1
	BEGIN
		DELETE FROM SalesLT.Address
		where AddressID = @AddressID
	END
		

END
GO
